package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 报损类型设置对象 damage_type_management
 *
 * @author ruoyi
 * @date 2025-05-30
 */
public class DamageTypeManagement extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    private Long id;

    /** 报损类型名称，不能为空 */
    @Excel(name = "报损类型名称，不能为空")
    private String damageTypeName;

    /** 排序字段，用于控制报损类型在界面上的显示顺序 */
    @Excel(name = "排序字段，用于控制报损类型在界面上的显示顺序")
    private Long sortOrder;

    /** 状态，默认为正常 */
    @Excel(name = "状态，默认为正常")
    private String status;

    /** 备注信息，用于记录报损类型的额外说明 */
    @Excel(name = "备注信息，用于记录报损类型的额外说明")
    private String notes;

    /** 创建时间，默认为当前时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间，默认为当前时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 创建员工，记录创建该报损类型的员工姓名或ID */
    @Excel(name = "创建员工，记录创建该报损类型的员工姓名或ID")
    private String createdBy;

    /** 描述信息，用于详细描述报损类型的用途或特点 */
    @Excel(name = "描述信息，用于详细描述报损类型的用途或特点")
    private String description;

    /** 手机号 */
    @Excel(name = "手机号")
    private String phone;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setDamageTypeName(String damageTypeName)
    {
        this.damageTypeName = damageTypeName;
    }

    public String getDamageTypeName()
    {
        return damageTypeName;
    }

    public void setSortOrder(Long sortOrder)
    {
        this.sortOrder = sortOrder;
    }

    public Long getSortOrder()
    {
        return sortOrder;
    }

    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    public void setNotes(String notes)
    {
        this.notes = notes;
    }

    public String getNotes()
    {
        return notes;
    }

    public void setCreatedAt(Date createdAt)
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt()
    {
        return createdAt;
    }

    public void setCreatedBy(String createdBy)
    {
        this.createdBy = createdBy;
    }

    public String getCreatedBy()
    {
        return createdBy;
    }

    public void setDescription(String description)
    {
        this.description = description;
    }

    public String getDescription()
    {
        return description;
    }

    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("damageTypeName", getDamageTypeName())
                .append("sortOrder", getSortOrder())
                .append("status", getStatus())
                .append("notes", getNotes())
                .append("createdAt", getCreatedAt())
                .append("createdBy", getCreatedBy())
                .append("description", getDescription())
                .append("phone", getPhone())
                .toString();
    }
}
